#ifndef __EXPORT__
#define __EXPORT__

#include "IKernel.h"
#include "GeneralProcessReqAns.h"
#include "IFrameTools.h"
IFrameTools * glbFrameTools = nullptr;

#ifdef __cplusplus
extern "C"
{
    __declspec(dllexport) bool __cdecl  AddInstance(IKernel * pvdKernel);
#endif

#ifdef __cplusplus
}
#endif
__declspec(dllexport) bool __cdecl AddInstance(IKernel * ptrKernel)
{
    bool bRetVal = false;
    try
    {
		glbFrameTools = reinterpret_cast<IFrameTools *>(ptrKernel->Tools());
        ptrKernel->AddInstance(CGenSevProSig::Instance());
        ptrKernel->AddInstance(CGenSevProLoop::Instance());
    }
    catch (...)
    {
        goto __end;
    }
    bRetVal = true;
__end:
    return bRetVal;
}

#endif // !__EXPORT__